package repaso;

import java.util.HashSet;
import java.util.Set;

import junit.framework.Assert;

import org.junit.Test;

public class LugarTest {
	private Lugar lugar;

	@Test
	public void asignarEtiquetaTest() {
		this.lugar = new Lugar(0, "Belgrano", 54, 45);
		Set<Etiqueta> etiquetas = new HashSet<Etiqueta>();
		etiquetas.add(Etiqueta.CULTURA);
		this.lugar.addEtiqueta(Etiqueta.CULTURA);

		Assert.assertEquals(etiquetas, this.lugar.getEtiquetas());
	}

	@Test
	public void removerEtiquetaTest() throws MissingEtiquetaException {
		this.lugar = new Lugar(0, "Belgrano", 54, 45);
		Set<Etiqueta> etiquetas = new HashSet<Etiqueta>(); // Vacio
		this.lugar.addEtiqueta(Etiqueta.CULTURA);
		this.lugar.remEtiqueta(Etiqueta.CULTURA);

		Assert.assertEquals(etiquetas, this.lugar.getEtiquetas());
	}

	@Test(expected = MissingEtiquetaException.class)
	public void removerEtiquetaEquivocadaTest() throws MissingEtiquetaException {
		this.lugar = new Lugar(0, "Belgrano", 54, 45);
		this.lugar.addEtiqueta(Etiqueta.CULTURA);
		this.lugar.remEtiqueta(Etiqueta.DEPORTE);
	}

	@Test
	public void getIdTest() {
		this.lugar = new Lugar(11, "Belgrano", 54, 45);
		Assert.assertEquals(11, this.lugar.getId());
	}

	@Test
	public void getNombreTest() {
		this.lugar = new Lugar(11, "Belgrano", 54, 45);
		Assert.assertEquals("Belgrano", this.lugar.getNombre());
	}

	@Test
	public void getLatitudLongitudTest() {
		this.lugar = new Lugar(11, "Belgrano", 54, 45);
		Assert.assertEquals(54, this.lugar.getLatitud(), .0001);
		Assert.assertEquals(45, this.lugar.getLongitud(), .0001);
	}
}
